Class of methods for improving perceived efficiency of end-user interactive access of a large database such as the World-Wide Web via a communication network such as &#34;The Internet&#34;

ABSTRACT

Procedures and systems for speeding up end-user access of large interlinked databases over communication networks such as the internet. Predicting user requests is accomplished by artificially intelligent assistant. These requests are prioritized and augmented protocols are used to download in a weighted interleaved fashion multiple information resources.

[0001] This application is a continuation-in-part of application Ser.No. 08/110,230, filed Aug. 23, 1993 which is itself acontinuation-in-part of Ser. No. 07/951,267, filed Sep. 25, 1992.

[0002] This application is also a continuation-in-part of an applicationentitled A METHOD FOR UTILIZING POINT-TO-POINT COMMUNICATION DEVICESINCLUDING FAX MACHINES AS BI-DIRECTIONAL INTERNET TERMINALS SN__/___,___ filed Jun. 7, 1995, which is itself a continuation-in-part ofSer. No. 07/800,325 filed Dec. 2, 1991 and 07/933,377 filed Jul. 10,1992, which were a continuation-in-part and continuation respectively of07/378,799, filed Jul. 14, 1989, now abandoned.

[0003] Inventor also references his European Patent Number EP 0144352B1.Inventor also references his U.S. Patent Disclosure Document Number287539.

[0004] All of these documents (except for those abandoned) are herebyincorporated by reference.

[0005] This application is a division of application Ser. No. 08/483,205filed Jun. 7, 1995, issuing as U.S. Pat. No. 6,507,872, relates to GroupI as specified in paper 6 of that application, and is being filedpursuant to 37 CFR 1.129(b).

TECHNICAL FIELD

[0006] The instant invention comprises a related class of methods,techniques and system designs for improving at least the perceived, ifnot the actual, efficiency of and end-user's interactive access of large(perhaps cross-referenced, cross-linked or “hyper-linked”) databases,such as the World Wide Web, via a communications network, such as “TheInternet”; and which can also be applied to the computerized access oflocal databases.

[0007] This document, to some extent, builds on inventive work disclosedby Inventor in earlier patent applications, issued patents, anddisclosure documents, as well as during proprietary development. Wherethat earlier material is relevant it will, generally, be pointed out inthe disclosure.

SCOPE OF INVENTION

[0008] Generally, the domain of the instant invention is an extant(generally packet-switching) communications network such as “TheInternet”. [Alternately, the invention can be adapted, in astraight-forward manner, and applied to a locally accessible database.]Such a network comprises a multiplicity of computers connected via anetwork over which information is sent: from a first program running ona first computer to a second program running on a second computer; by(if sufficiently large) breaking that information into a multiplicity ofpackets; and, “wrapping” each packet in addressing information thatspecifies at least its destination. The specification of how informationis parsed, addressed, transmitted, received and reassembled aregenerally called communication protocols and include, on the internet,TCP/IP, UDP, FTP and HTTP; as well as protocols that permit an end userto dial-up a service provider's computer on the internet including SILP,CSLIP and PPP.

[0009] The instant invention relates to a group of related methods forselecting and arranging information prior to its being submitted fordistribution via the network and/or re-assembling the information afterits being received at the destination. The network and itscommunications protocols operate on one or more levels below theoperation of the instant invention and, thus, the instant invention maybe considered a “meta-protocol” or higher level protocol.

[0010] The intended practitioner of the present invention is someone whois skilled in designing such networks and implementing the software thataffects and/or utilizes these communication protocols within theenvironment of a particular operating system (e.g., UNIX). That is, oneskilled in the art of this invention is capable of writing program codeand/or utilizing and coordinating existing programs within amulti-computer environment. Examples of such related tasks would be theprogramming of software to implement: a communications protocol such asTCP/IP, UDP, FTP, HTTP, SLIP, CSLIP or PPP; or, an application thatutilizes such a protocol, such as an information providing server (e.g.,an EMail distribution program, or an FTP or World Wide Web site) orinformation requesting and receiving client program (e.g., a user EMailprogram or Web Browser). Many of these capabilities or programs areprovided as part of operating systems (e.g., UNIX) and suchpractitioners are knowledgeable about and skilled in implementing theinternals of such operating systems. Often they are referred to assystem programmers or software engineers.

[0011] Those skilled in the art know how to accomplish such tasks as to:coordinate and pass information between programs operating within asingle computer or on several interconnected computers; initiaterequests for local or remote information or database searches; and,generally, to accomplish these tasks by utilizing services provided byoperating systems, communications packages and protocols, and otherapplication programs. The details of accomplishing such standard tasksare well known and within the ken of those skilled in the art; are not(in and of themselves) within the scope of the instant invention; and,will be referred to but not described in detail in the instantdisclosure.¹

[0012] Rather, what will be disclosed are novel higher-level methods,system designs and information arrangements, which rely and build uponthose known and understood processes. Disclosed will be what one skilledin the art will need to know, beyond that with which he is alreadyfamiliar, in order to implement the instant invention.

[0013] The above discussion relates to the instant invention in general.However, certain aspects of the instant invention comprise elementsincluding database searching, statistical simulation or artificialintelligence (e.g., learning software and neural networks). Similarly,those skilled in these specialized areas of computer science are wellversed in the details of those fields; and, generally, those details arenot the substance of this invention. Rather, the disclosure will pointout the specific elements of the instant invention to which the standardpractices of those fields are to be applied; or, specifically how thestandard practices are to be modified to practice the instantinvention.²

[0014] In summary, the disclosure of the instant invention will focus onwhat is new and novel and will point out, but not repeat the details of,what is relevant of that which known in the art.

BACKGROUND AND PRIOR ART

[0015] This invention is disclosed in an technological environment thatalready includes, without limitation, large packet-switchingcommunication networks, such as “The Internet”, and large interconnecteddatabases, such as the World Wide Web (WWW). Much of the disclosure willbe cast as relating specifically to accessing the WWW on the internet;however, references made to “The Internet” or “internet” may beconsidered to apply to any similar data network (as well as to theprocess of accessing a local database) and references made to the WWWmay be considered to apply, generally, to any type of local or remote,distributed or coherent, database. The WWW has been chosen as an examplebecause of its complexity as a hypermedia database (which comprisestext, images, sound, etc.) which is interconnected and distributed innature; and, also, because of the current interest in, and increasingusage of, this particular database.

[0016] In addition there are many extant programs and mechanisms foraccessing and initiating computer mediated searches of such databases.For example, gopher, WAIS, archie, veronica, web browsers (includingMosaic and Netscape).

[0017] Communication between various computers on the internet (andcomputer programs running on those computers) is affected by variouscommunication protocols, including TCP/IP, FTP, UDP, HTTP, SLIP, CSLIP,PPP, etc.

[0018] There are already extant many programs and techniques for:running computer simulations and analyses of systems such ascommunication networks; compiling and analyzing statistics, includingsensitivity analysis; and artificial intelligence techniques such ascomplex searching algorithms, programs that learn or train, canrecognize patterns, neural networks, etc.

[0019] Lastly, there are a large number of service providers who willmake available to users, who have personal computers or workstations, aconnection via modem over a dial-up telephone line (or ISDN or dedicatedline) through their computer to the internet. However, accessing,searching and browsing the WWW through such a provider can be apainfully slow process.

THE PROBLEM TO BE SOLVED—IN BRIEF

[0020] As explained, above, the process of “surfing the Web”, let alonetrying to accomplish serious work, via the internet can often be a slowand frustrating process; especially if accessing via a modem through aservice provider but, often, even if directly connected to the internet.Periods of being flooded with information may alternate with longstretches of waiting for information to arrive.

[0021] As working, playing or just browsing over communicationsnetworks, via digital computers, become ubiquitous, the number of users,number of “sites”, and the shear bulk of data being accessed, is growingexponentially.

[0022] The introduction of graphical or hypertext document systems (suchas the HTML language, the HTTP protocol and browsers such as Mosaic) tothe Internet, and the transformation of that network into the World WideWeb (WWW), have tremendously increased the requirements for bandwidth:both because of the increased requirements of graphic (or even video andaudio) components of documents, “pages” and files; and, because thisricher, multimedia content is attracting users beyond a threshold wherethe commercial potential becomes obvious. This, in turn, prompts more“information providers” to take the plunge, increasing the size of thebrowsable pool of content, and a positive-feedback spiral results.

[0023] The increasing demands for raw bandwidth and “networkinfrastructure” are creating a technical and logistical problem whichis, on the other hand, perhaps an economic and business boon. The classof inventions described herein will likely only exacerbate thissituation, as will become clear later.

[0024] Rather than being directed toward reducing requirements forbandwidth—i.e. traditional bandwidth reduction—these techniques aredesigned to increase the performance, efficiency and value of the workthat can be done using whatever level of such communications technologyis available. That is, the goal here is not to reduce the size of thechannel needed, but to—apparently—squeeze more information down theavailable user channel.

[0025] This is similar to an approach used in Inventor's invention whichis subject of U.S. patent application Ser. No. 07/077,916 where Inventorstates:

[0026] The goal of most bandwidth compression schemes is to “squeeze” agiven information signal into a smaller channel. A main goal of theinstant invention is to “squeeze” a larger picture into a given channel.Although this may at first sound as a semantic difference only, there isa significant practical difference.

[0027] Broadcast television in the US is a “given channel” that isunlikely to change for the foreseeable future. Bandwidth compressionschemes that would allow the use of a smaller transmission channel andrequire complex decoding at destination could not be used with the manymillions of existing home receivers.

[0028] Similarly, most users are tethered to communications networks viatelephone dial-up lines and modems which—although, in general, modemsget better and higher-bandwidth telephone service is becomingavailable—for any given user, at any given time, are limited and usuallynot sufficient for the user's desires. That is, working over acommunications network is usually perceived as slower than workinglocally (or over a high bandwidth network, such as a Local Area Networkor ISDN or T1 digital telephone line).

[0029] However, whatever the given network connection, these techniquescan be used to advantage to increase actual or perceived performance (ofwork, if not strictly of bandwidth) for many types of work done oversuch networks.

[0030] In particular, searching or browsing through large amounts ofinformation (cohesive databases, distributed masses of information suchas the WWW, or otherwise) is a task that often goes in fits and starts.The user makes some decision about what is desired and makes a requestfor more remote information: as a formal database search request; byclicking on a “link” on a WWW page; or otherwise. The user then waitsfor the information to be delivered to his local screen. During thisperiod the user often sits idle. The user then reviews the newinformation. During this period the local computer and communicationline often sits idle. And so on.

[0031] The goal here, then, is to: speed up the overall process and makeit more efficient; make the user feel that the process is more immediateand valuable; shorten work time; or, alternately, get more done in thesame time.

CONCEPTUAL ORIGINS

[0032] In an early stage of the development of the techniques describedherein, Inventor recognized that: remote computer databases that aresearched for professional purposes are becoming more widely used,particularly in the legal, engineering/scientific and medical fields.Further, the amount of data to be down-loaded is increasingly large.

[0033] Communications and on-line costs are now often a significant partof the cost of doing business. Efficient use of communication anddatabase search facilities is therefore desired.

[0034] We have developed a group of related techniques (technicaldetails are described below) that will make more efficient use of theopen communication line, saving money. These will also speed the searchprocedure, saving the working time of the lawyer or other professionalusing the system, which professional time is much more valuable thancommunications time.

[0035] These techniques will also be useful for local searching ofdatabases contained on magnetic disk or CD-ROMs.

[0036] A narrative example is as follows: A lawyer has requested from aremote database, and is reviewing on screen, a particular legal case. Inthe most simple embodiment, all cases referred to by said case would beretrieved by the remote computer and initial sections (pages orparagraphs for example) of each case would be transmitted to thelawyer's workstation. In this way when the lawyer was ready for a nextcase, it is highly likely that some of that material would already beavailable at the lawyer's station for review. As soon as a selection ismade by the lawyer, transmission time is wholly devoted to thatselection rather than multiplexed between multiple potential selections.The relative amounts transmitted of each potential selection, and thelist of potential selections, can both be modified by factors such as:the length of each document; statistical “knowledge” of the lawyer'sprior access to that particular document; statistical “knowledge” of thelawyer's prior access to that type of document; document dates; searchof abstracts and key words; prior statistical knowledge of lawyer's workstyle; and other factors.

SUMMARY OF INVENTION

[0037] As explained, above, communication while accessing remotedatabases over the internet often runs in fits and starts; thecommunication channel is often left fallow. [At least the communicationline between a service provider and an end user; the communication linebetween the service provider and the internet, in general, may be inmore uniform use, serving many users simultaneously.] The intent of theinstant invention is to make use of that fallow time and, thereby,improve the perceived (if not actual) responsiveness and efficiency ofthe network to the user's demands.

[0038] A specific deficiency that arises when accessing WWW “pages” isthat each page consists of a text script and, optionally, a number ofassociated image or other multimedia resource files. A separatecommunication connection (a logical data construct, not a physical wiredconnection) is established, used, and then broken down for the deliveryof the script and each resource. This use of a multiplicity ofconnections results in a significant amount of overhead and delay. Oneelement of the present invention will be to establish and leave extant acommunication connection that will survive the delivery of a singlefile, and which can be used not only for delivery of all the resourcefiles comprising a document or “page”, but for the delivery of multipledocuments from the same source to the same destination. This technique,in and of itself, may not constitute inventive matter; however, thecomposite method, which this and related techniques comprise, and newuses to which they are put, are.

[0039] Similarly, it is standard that an end user's client program (thatprogram which permits the user to “browse” and which initiates systemrequests for information resources) permits a single request to be made,waits for the requested information to be delivered, and then waitsfurther while the user reviews the delivered item and decides what to donext. Only then is the user permitted to make a next request. In theinstant invention multiple, parallel requests will not only bepermitted, but in some embodiments the system will make those multiplerequests in anticipation of user requirements. Again, this technique, inand of itself, may not constitute inventive matter; however, thecomposite method, which this and related techniques comprise, and newuses to which they are put, are.

[0040] The more substantive elements of the present invention comprisethe following:

[0041] 1. The interleaving or time-division multiplexing of multipledata resources (generally, files) into a single (or at least composite)communication stream of information, by fragmenting the resources intoportions and interleaving those portions.

[0042] 2. The weighting of the presence of the individual data resourceswithin the composite information stream by modulating the size and/orfrequency of representative portions to be included.

[0043] 3. Attempting to anticipate the user's likely future requirementson a “predictive probabilistic” basis. Further, the flexible and/orartificially intelligent adjustment or customization of the algorithmsthat predict and determine the interleaving weights for a particularuser.

[0044] 4. Determining and updating the interleaving weights (2) based onthe anticipation (3) and actual events.

[0045] 5. The “pyramidization” of data resources in such a way that apartially delivered data resource is, at least, of some use to the enduser; perhaps, if only, to evaluate whether the balance of the dataresource is required.

[0046] These five elements will be disclosed in more detail below, aswill their integration into a class of methods and protocols that willpermit more efficient usage of communication networks by end users. Inparticular, new communication protocols and methods will be disclosedthat function: as a layer above existing protocols; as a layer belowexisting protocols; as addons or extensions to existing protocols; or,as entirely new protocols or methods.

[0047] Further, it will be disclosed how to apply these new methods to anumber of different system architectures. Thus, a group of relatedembodiments will be disclosed which can be appropriately applied todifferent situations. Not all of these variations will embody each ofthe above elements to the same degree, if at all.

END USER COMMUNICATION CHANNEL USAGE UNDER VARIOUS CONDITIONS

[0048] Referring, now, to FIGS. 1 through 6 (reading from top), a sixminute interval during an end user's interaction with the WWW isdepicted, in a schematic fashion, under various conditions. Thesefigures are simplifications and exemplary in nature. They are beingpresented to better explain how several of the inventive elements,introduced above, can be applied to increase the efficiency of end userinteraction with the network.

[0049]FIG. 1 (top) shows the standard situation where, in response to anend user action (e.g., specifying the designation for a WWW site homepage) the system requests (R, at time zero) a first page (1). About tenseconds elapse before the network begins to deliver page 1, whichdelivery (D/1) continues for another 50 seconds being complete at 1minute. The user has waited for a full minute of “thumb-twiddling” and,at that point, takes three minutes to examine (E) the information onthat first page (1) and decides to link (by clicking on a highlightedword or icon, denoting hyperlinks to additional pages elsewhere on thenetwork) to a second WWW page (2). In this case this choice of a secondpage was made from among six possible (a, b, c, d, e or f) secondarypages. The system then requests (R, at time 4 min.) the second selectedpage (2). About ten seconds elapse before the network begins to deliverpage 2, which delivery continues for another 50 seconds being completeat 5 minutes. End user then examines (E) the second page (2).

[0050]FIG. 2 (second from top) shows that, in response to an end useraction (e.g., specifying the designation for a WWW site home page) thesystem requests (R, at time zero) a first page (1). About ten secondselapse before the network begins to deliver page 1, which delivery (D/1)continues for another 50 seconds being complete at 1 minute. The userhas waited for a full minute of “thumb-twiddling” and, at that point,takes three minutes to examine (E) the information on that first page(1). However, during the three minutes that end user is examining pageone, the system notes that page one has six potential hyperlinks topages A, B, C, D, E and F and, in a serial fashion, begins to requestthose pages from the network. Each request takes one full minute (10seconds to request (R) and 50 seconds to deliver(D)) and by the time enduser has made a decision, three minutes later, the first three of thosepages (A, B & C) have been requested and delivered. Thus, when end user“clicks” on the hyper link to page C, the network's response isapparently instantaneous—a vast (100%) improvement over the situationshown in FIG. 1.

[0051]FIG. 3 is identical to FIG. 2 except that, when end user makes adecision, it is to click on the link to page F instead of page C. Sincepage F has not yet been downloaded, a request goes out at the fourminute mark and, by the five minute mark, the page is delivered withperformance no worse than was exhibited in FIG. 1.

[0052] In both FIGS. 2 and 3, the system is employing a simpleembodiment of the inventive element of predictively anticipating the enduser's future requirements. In FIG. 2, the system succeeds in itsprediction and greatly improves response time; in FIG. 3 the system hasfailed and responds no worse than in the standard situation. However, wewould like to improve performance in all cases.

[0053] In FIG. 4, another inventive element is added and the requests(R) for all six pages (a-f) go out to the network simultaneously (or, atleast in very quick succession) in parallel, and packets from all sixpages begin to arrive soon after and continue to do so. The specifics ofinternet communication protocols (e.g., TCP/IP) permit the packets fromeach separate page to be identified and sequenced. At the four minutemark, end user makes a decision (again, page C but, in this case theresults will be the same for any of the six pages) and the informationfor page C is already half there, indicated by (c). At that point (4min.) the end user's system requests (r) the service provider's computer(or in other embodiments, the network or information provider) to nowfocus all available communication bandwidth to forwarding remainingpackets of page C (c). [Affecting such a request and response is notpart of the standard capabilities of internet operation and will beexplained in greater detail below.] Since each page's delivery over thenetwork takes approximately one minute (in this simplified schematicexample) by the four minute mark all of the packets for all of the pageswill likely already have arrived at the internet service provider'scomputer, and be awaiting delivery, via modem, to the end user'scomputer. It takes about an additional 20 seconds to download theremaining packets for page C from the internet service provider to theend user.

[0054] Thus, at the 4:20 mark page C is completely there. At worst,performance has improved over the standard situation by more than 66%.The advantage here (over the case in FIGS. 2 & 3, where performance isimproved either 100% or 0%) is that the 66% improvement is achieved nomatter which of the six pages are selected. The worst case wait is 20seconds where, previously, the worst case wait was a full minute (eventhough the best case was no wait at all). Generally, the perception ofsystem performance is tied to worst case. That is, always waiting abouta half minute will be perceived as less annoying than waiting a fullminute half the time and not at all half the time; even though theaverage wait is the same (in fact, the average is :30, more than the :20here).

[0055] Further, since more than half of page C is already there (at time4:00) with zero wait, an additional inventive element permits the firstpart of the file to be displayed while the balance is still in transit.Thus, effective performance can still be perceived as zero wait, or 100%improvement because, by the time the end user progresses through thedocument beyond the half-way mark, the complete file will, in alllikelihood, be available. Document “pyramidization”, an additionalinventive element described in detail below, can increase the perceptionof performance further, by reordering the information in the document inorder to make a partial delivery more useful, especially for makingdecisions such as “whether to wait for the completion of the document”or “which page to link to next”.

[0056]FIG. 5 depicts an additional inventive element. Previously, the“prediction” was uninformed; all potential choices were treated asequally likely. In FIG. 5, “probabilistic prediction” and weighting ofthe interleaving are added. Based on some inference (e.g., the displayedwords associated with the hyperlink to page C match some entry in a listof key words that the system has on file associated with subjects ofinterest to this particular user) that page C has a higher probabilityof being what the end user will select, the number of packets devoted topage C is doubled, compared to any of the other five pages. Thus, when Cis selected, it is already there, complete.

[0057]FIG. 6 depicts the same situation as FIG. 5 but, in this case, theprediction was off and page F was selected. Performance in this case isapproximately the same as for any page selected in the case depicted inFIG. 4; the maximum wait till completion is :25, an approximateperformance increase of about 58%; but a perceived performance increaseof up to 100% with partial display or “pyramidization”.

EMBODIMENTS FOR VARIOUS SYSTEM CONFIGURATIONS

[0058] Depending upon where, within the network, the inventivetechniques may be applied, there will be different embodiments. Theseare depicted in FIGS. 7 through 11. When the computer(s) collaboratingon the invention are few, the inventive embodiments are similarlylimited, when the improvements are system wide, the most capable andflexible embodiments result.

[0059] In particular, FIG. 7 shows a minimal embodiment where the clientsoftware, running on the end user system, contains the only inventiveelements, and these are, thus, limited. The client attempts toanticipate potential user requirements and requests delivery of thoseresources, during fallow communication time, while the user is examiningprior information. These may be requested serially, as shown in FIG. 2or in parallel, as shown, for example, in the early part of FIG. 4.Since, in this embodiment, the invention resides solely in the clientsoftware, the interleaved reception of packets from parallel requestswill be haphazard, at the variegations of network traffic. Further, theshift in transmission, depicted at time 4:00 in FIG. 4 cannot be countedupon as being possible.

[0060]FIG. 8 shows another minimal embodiment where the informationprovider server software, running on the computer “at the opposite end”of the network, contains the only inventive elements, and these are,thus, also limited. The server attempts to anticipate potential userrequirements in an uninformed way, as best it can, and starts deliveryof those resources, in addition to that which was requested, in responseto a simple request for the “tip of the iceberg”. This approach will bedisclosed in greater detail later herein.

[0061]FIG. 9 depicts a situation where both the client and serversoftware share complementary inventive elements, with much improvedperformance. However, in general, other computers on the network areunaware of the invention and, as will be disclosed in greater detaillater, this enhanced “meta-protocol” operates within the confines ofexisting communication protocols. Thus, while specific client/serverpairs may operate in an enhanced mode, such operation cannot be countedupon to be generally available.

[0062]FIG. 10 depicts a situation quite similar to FIG. 9. Thedifference here is that the entire network is made “aware” of theinventive techniques by the adoption of a novel or enhancedcommunication protocol. In that case, enhanced operation may, generally,be expected; and, further other computers which pass the communicationup and down the network can be counted upon to help.

[0063]FIG. 11 depicts an embodiment (called THE FUNNEL™ by Inventor)where an enhanced client program running on an end user's system, and anenhanced communications utility running on a service provider'scomputer, collaborate to provide performance approaching that availablefrom either of the two prior embodiments, although the variousinformation provider's server computers run standard software and usestandard communication protocols. As will be explained more fully below,with this embodiment overall network bandwidth used by the informationprovider and service provider servers, on behalf of the end user, mayincrease significantly, in order to make modest additional use of theend user's communication line; but, this will provide marked improvementas far as the end user is concerned.

INTELLIGENT ASSISTANT

[0064] The enhanced communication protocol technology disclosed hereinwill, to a great extent, be made useful by an “Intelligent Assistant”program that will anticipate a user's potential needs for information.That assistant will search ahead looking for potential informationresources to download. It will then make probability assessments basedon the document in question, what is currently being looked at, thestated and “inferred” goals of the current work session, the stated and“inferred” general goals and work style of the user, etc. Next theassistant will initiate parallel requests for multiple informationresources and will weight the amount of available bandwidth that shouldbe applied to each request based on the probabilistic assessment madepreviously.

[0065] In this way the access to the fallow communication link capacitywhich is made available through the novel (parallel and weighted)communication protocols can be put to optimal use by the intelligentassistant program while the user is otherwise engaged.

[0066] Further, by analyzing its performance, and tracking the user'shabits, the intelligent assistant will continually increase itsperformance and keep from becoming outdated.

[0067] Extensive discussion of how these techniques can be applied willfollow below; however, first, the techniques will be described.

[0068] Probability Assessment:

[0069] As will be described in much detail below, probabilisticassessments may be made for many documents, by matching keywords andother elements of documents, and many other techniques. These processesare controlled by a complex and sophisticated set of options, parametersand policies. These, in turn determine how the probabilities will becalculated and what policies determine how weights will be set forvarious document types, specific documents, or pyramidal levels. Forexample, a document with a high probability may still be given a lowpriority if it is of a particular type (say an image).

[0070] Whichever these mechanisms are chosen to be implemented (and,details of choices are presented below) the important aspect to considerhere is that the mechanisms are very flexible due to the manyparameters, choices and policies that may be combined with the various“search and match” mechanisms that add up to a probability assessment.

[0071] Post Mortem:

[0072] After each session the intelligent assistant will perform a “postmortem” or “Monday morning quarterback” type analysis of the session.

[0073] This will consist of running a simulation of the session, overand over, with the various parameters being adjusted for eachsimulation. The goal, by whatever searching and pruning techniques areapplied, is to find (as best as possible or, at least, reasonable) whatwould have been the best parameters and policies to have implemented inthe prior session in order to optimize performance.

[0074] [What constitutes optimize is another matter entirely. That is dowe wish to minimize the average wait time, minimize the maximum weighttime, shorten the work session, etc. These are a matter human choice andit will be assumed here that some preferred measure of performance hasbeen chosen by the user.]

[0075] A “simulation” will consist of re-playing the session. A historyof the session and documents being kept by the system for this purposeand then, if the documents have not been tagged as to be saved, by theuser, they will be discarded. For each simulation the parameters andpolicies will be adjusted and the system will calculate the varioustimes to download documents (based on the data kept from the actualsession history) with different weights and policies in effect. It willthen match what documents “arrived” and when, and match these againstwhich documents the user actually decided to look at (as well as howlong he looked at them, if he kept the document, if he used it to makeanother “hyperlink” jump to another document, etc.). In this way themachine may construct a simulated work session and determine how muchand when the user would have been without whatever he needed.

[0076] Whatever optimal criteria will then be applied to come up with afigure of how convenient or inconvenient the session would have beenwith the particular policies and parameters in effect.

[0077] A “sensitivity analysis” will then be run on the variousparameters to see which effect the session positively or negatively;alone or in combination.

[0078] Then, the system will keep in its long term storage the resultsof this sensitivity analysis in association with a characterization ofthe work session in some feature space (e.g., what type of work wasbeing done; how did the user “feel” (or at least reported he felt); whattypes of documents were accessed; how active was the user, howcontinuously was he working; how long was the session; what types andamounts of information was kept vs. discarded; etc. etc.).

[0079] Then, the next session the machine will determine acharacterization for the current session (which can be continuallyupdated during the session) and try to match that characterization tothe characterization of other sessions in feature space. For such a taskartificial intelligence techniques including pattern recognition andneural networks are well suited.

[0080] The system will then chose the parameters and policies that areassociated with the closest match in feature space (or, may combineparameters and policies from several partial matches is there is not aclose match).

[0081] However, the system will, of course, be programmed to giveoverride priority to explicit user requests. For example, if the userselects from a menu that he wants pictures with his data today, thesystem will not deny him just because it will speed up the session.However, the system will, in fact, be programmed to “suggest” such acourse of action. [However, it will also be made possible to suppresssuch suggestions, in order to prevent user agitation.]

[0082] The above method may be combined with the method of theintelligent edge creation (a system that “watches over the shoulder ofthe user”) disclosed in Inventor's earlier patent application. Thecombination will provide a trainable intelligent assistant shell thatcan be applied to many applications where computers and humans interacton a repeated basis.

[0083] What follows are descriptions and a number of narrative examplesof how the parameters, policies, probabilities and weights may bedetermined and utilized. See FIG. 12 for a flow diagram of this“post-mortem simulation” technique.

PROBABILISTIC PYRAMIDAL INTERLEAVING

[0084] Emulsification of Blobs:

[0085] The section CONCEPTUAL ORIGINS, above, outlines a process thatInventor calls “Emulsification of BLOBs”. A BLOB is (someone else's)acronym for a Binary Large OBject—that is, a large binary file that canbe a large text document or, as is common now, a file or document thatcontains graphics, sound, video or other multimedia or high-volumecomponents.

[0086] As was described, in the previous section, a number of files—orBLOBs—are interleaved for transmission (multiplexed). The presentInventor has been working for some time with novel ideas forinterleaving and/or multiplexing signals, dating at least back to themid-1970s and an audio gaming project.

[0087] A process in physics where blobs of oil are dispersed in water(or with two other immiscible liquids) is referred to as emulsification.The blobs are broken up and a uniformly mixed fluid, containing bits ofmaterial from all the blobs, suspended in the other medium, can besmoothly poured.

[0088] By analogy, bits (only informally, the file “chunks” likely beinglarger than a single bit) of many different BLOBs will be interspersedin the digital transmission medium so that a “smoothly mixed informationfluid can be poured” down a transmission channel.

[0089] In a “naive” version, the amount of information interleaved fromeach file would be the same: e.g., the first 8 bytes from file 1,followed by the first 8 bytes of file 2 . . . followed by the first 8bytes from file N, followed by the second 8 bytes from file 1, etc. Ina, perhaps slightly less naive, alternative the chunks might be weightedby the length of the file: e.g., the first 1% of file 1, followed by thefirst 1% of file 2 . . . followed by the first 1% of the file N,followed by the second 1% of file 1, etc. In this way, information fromall the files being transmitted run out approximately at the same time.

[0090] Neither of these schemes take into account what Inventor callsProbabilistic Predictive Weighting.

[0091] Probabilistic Predictive Weighting:

[0092] With the above two examples, the size of portions, taken from amultiplicity of files to be interleaved, were: a) fixed in absoluteuniform size; or, b) fixed in a size proportional to the size of eachfile.

[0093] A second major component of the present group of inventivetechniques comprises techniques for weighting the size of portions to beinterleaved.

[0094] First, each file can be given a base portion size, or weight, of1 unit. And this can be of the absolute or proportional type.

[0095] Next, the weight (i.e., portion size, or frequency of inclusionof portion) can be adjusted, in a straightforward or “unintelligent”fashion, depending upon known factors. For example, graphic images canbe given precedent because of their, generally, larger size compared totext files. Or, the exact opposite conclusion can be reached becausegraphic files generally take much more bandwidth than text but yieldless equivalent information. By cliche, a picture may be worth athousand words, but it is often possible to hold tens or hundreds ofthousands, or even millions, of words in the same file space. Otherstraightforward policies can be made on similar, or other unrelated,bases.

[0096] However, more important (or at least more inventive) otherfactors can be used to adjust the interleaved weighting factors forfiles; and, these can be updated and adjusted on an on-going basisduring a session.

[0097] The basic idea is that while a particular item of information isbeing reviewed by the user, the system will be making a best guess atwhich several items the user may be interested in accessing next. Thesemultiple items will then be downloaded in interleaved fashion and theweights continually updated so that, stated simply: at any given time,there is the greatest likelihood of the most information required next,being correctly anticipated and delivered, or at least in the process ofbeing delivered.

[0098] Weights can be adjusted depending on: a) file size (as describedabove); b) file type (also, touched on above); or, c) an estimatedprobabilistic prediction of the likelihood of the particular item beinglater required by the user (described following).

[0099] The general principle for Probabilistic Predictive Weighting isto weight more heavily (i.e., increase the size or frequency of includedportions) from files that are more likely to be (i.e., have a higherprobability of being) the (or, at least, one of the) next item that theuser will want to access. In this way, the expectation can be increasedof having more of what will be needed next already downloaded before itis even requested. Thus, apparent instantaneous response can beachieved.

[0100] Once an item is actually selected for viewing by the user, itsweight is increased (perhaps, but not necessarily, getting all of theavailable bandwidth) so that the completed document will be availableASAP or, at least, sooner.

[0101] The probability estimates can be made based on the interaction ofseveral factors. Each file can then be given a composite probabilityindex, perhaps with the sum of the indexes being normalized for a totalof 1 unit or 100%. The relevant factors can interact in a non-trivialway and elements of Artificial Intelligence (AI) can be applied. RelatedAI-enhanced user interfaces have been described by others; and also byInventor, for example, in his U.S. patent application Ser. Nos.08/435,487 and 07/227,403 since issued as U.S. Pat. No. 4,925,294.

[0102] The basic factors include a straightforward or more “intelligent”assessment of:

[0103] a. The to be weighted document's size, type and particularly itscontent or other associations;

[0104] b. The currently viewed document's content and relationship orlinkages to the weighted document(s);

[0105] c. The user's stated goals, work style, and session “profile” asstated by the user;

[0106] d. The system's own historical/statistical assessment of theuser's “profile” or habits and activities, and the content, linkages andrelationships of documents accessed by the user, during the currentsession; including the content, linkages and relationships of priordocuments in the current session;

[0107] e. The user's general work habits, preferred work style, and“profile” as stated by the user;

[0108] f. The system's own historical/statistical assessment of theuser's general “profile” or habits and activities, and the content,linkages and relationships of documents accessed by the user, in earliersessions; in particular, an assessment must be made of the type ofearlier sessions (documents) and the relevance of those earlier sessions(documents) to the current session (document).

[0109] Note that the term document as used above may be taken ratherloosely and can refer to an entire file or coherent document (text ormultimedia) in the usual sense; part of such a file/document, divisionsbeing made on the basis of sequence, content type, format type, mediatype, etc.; a monomedia graphic, video, sound or text file; a “page”,“card”, or other subdivision of a linked hyper-media or multimediadocument; a W3 page; a referenced or linked document of any of the typesabove, etc.

[0110] The above 6 factors were stated in rather abstract fashion. Inthe interests of clarity, some concrete, specific and/or narrativeexamples of each type, and of some of the complex interactions betweentypes, will follow. All of the “policy” type issues mentioned can beexplicitly specified by the user, or can be “statistically intuited” bythe system based on its “watching over the user's shoulder”. A number ofdifferent collections of policies (profiles) can coexist on the system,and can be selected from (or combined) by the user; or, the system canchoose what it determines is the best match of profile(s) to the currentuser work session.

[0111] Under item (a) which depends solely (primarily) on factors of thedocument to be weighted:

[0112] 1. Large documents can be weighted more (or less) heavily; etc.

[0113] 2. Graphics can be favored over text, sound over graphics, etc.;abstracts can be favored over full text; reviews can be favored overabstracts; large-circulation documents can be favored oversmall-circulation; on-line versions of print publications can be favoredover electronically-originated documents; newer (or older, or in aparticular date range of) documents can be favored; etc.

[0114] 3. Content (or association) decisions can be made on the basisof: key-words, abstracts, headings, full-text, etc. searches; similarassessment of documents linked to or from, or referenced by or in, orotherwise related to, this document; authorship; assessments of theidentity or profiles of those others who have accessed this document (ifknown); etc. Each “hit” can count equally, or different types of hitscan themselves be sub-weighted, or a complex or non-linear relationshipbetween number and type of hits can be made.

[0115] Under item (b) where factors are related between the current andweighted documents:

[0116] 1. Relating content factors (key words, etc. as described above)between the two documents—for example, matching more key words would beweighted higher; the number of cross-references—for example, a documentcited several times can be weighted more heavily then one referencedonce, or one referenced forward and backward would be weightedadditionally; both documents in question being referenced by (or, moreeasily determined, referencing) the same third document would increasethe weighting; etc.

[0117] Under item (c) where factors are related between user sessionspecifications and weighted documents:

[0118] 1. Stated goals such as: key words (or any of the policies oritems described above [or below]); organization types (commercial,academic, research); author names or types (researchers, MDs, etc.);publication types; etc.

[0119] 2. Instructions such as: deliver only abstracts (or other sub-setof text) first, and full text later, or only if the document is actuallyviewed, or only when specifically requested (if at all); deliver textfirst and pictures or graphics later, or only if the document isactually viewed, or only when specifically requested (if at all); etc.

[0120] 3. Instructions as to how to weight, or which to use of, thepolicies or factors described above or below: such as “only pre-send ifat lease two factors of a particular type and any other mix of threefactors are “hits” (e.g., two key-word matches and any three types ofreferences)”; or, “send abstracts of all referenced documents, but onlysend full text if at least one third of key words match”; or, “send fulltext of any referenced document that matches any three factors (from adetailed list not show here) with any of the documents I have alreadylooked at this session”; etc.

[0121] Under item (d) where factors are related between user's sessionhistory/statistics and weighted documents:

[0122] 1. As just one example: the system might note that (92% of) alldocuments actually looked at during this session had the words “virtualreality” in the title, key word list, or abstract and, thus, moreheavily weight any potential document that has those words somewhere inthe text (or even more heavily for the title, abstract or key wordlist). Further, the system might notify the user that such an “systeminferred point of interest” were noticed.

[0123] Under item (e) where factors are related between user general(not session specific) profile specifications and weighted documents:

[0124] 1. For specifics see item (c) above. Such policies or preferencescan be specified in a general profile; and can further be specified forseparate profiles for different types of sessions, e.g., academicresearch, commercial research, legal research, browsing; differentstates of mind, e.g., feeling sharp vs. feeling fuzzy, feeling likebeing detailed and in control vs. feeling like letting system make moresuggestions, etc.

[0125] Under item (f) where factors are related between user general(not session specific) history/ statistics and weighted documents:

[0126] 1. For specific example see item (d) above. However, suchstatistics and inferences can be made over many sessions, perhaps onlyconsidering sessions that match the current session in type, goals,state of mind, etc.

[0127] 2. As another example: the system might note that duringwork-related research sessions, the user almost always reviews the firsttwo documents in toto, irrespective of content, and then (as the usergets frustrated and more discriminating—although the system will beworking with statistics rather than psychological analysis) the userviews abstracts first and (usually) only downloads documents that matchthe stated session keywords.

[0128] Pyramidal Ordering of Information Elements:

[0129] The next component of the instant inventive system is whatInventor refers to as “Pyramidal Ordering of Information Elements”.

[0130] In short, this term covers a class of techniques (some existent,some new to this invention) that permit small versions of variousinformation elements to be delivered, which contain reduced detail butwhich are still useful and, in particular, useful for the task ofevaluating whether the user wants to access a fuller version of the sameinformation element or document.

[0131] This is not the same as information compression, in which acomplete information element is encoded into a smaller form, and can belosslessly (or, in some cases, notably for video and graphics, with someloss) reconstructed at a later time. Any sort of informationcompression, including those disclosed by Inventor in his U.S. patentapplication Ser. No. 07/077,916, can be used in conjunction with the“pyramidal” techniques disclosed herein.

[0132] The term pyramidal is being used here in an informal somewhatprosaic manner. There are a class of mathematical functions with asimilar name and Inventor is not necessarily drawing an association withthose specifics.

[0133] Rather, the intent here is to use the sense of the term pyramidalas is used to describe a desired structure for journalistic writing.Essential facts are disclosed first, followed by a somewhat morecomplete restatement, followed by a wealth of detail; thus,progressively more detailed and larger versions of the same story followeach other, creating an expanding or pyramidal structure. One can getthe gist by a quick perusal of the opening of the article, and may thendecide whether to pursue the fuller story by continuing with the morecomplete and detailed sections which follow.

[0134] It may already be common practice to organize some informationelements, notably graphics, in a manner that may correspond toInventor's intention for pyramidal organization, and Inventor is notnecessarily claiming the invention of such techniques here.Nevertheless, the use of such techniques for the purposes describedherein may, in fact, constitute a new use or inventive improvement overthe current art and, to that extent at least, Inventor is claiminginventorship. In particular, some graphics that are delivered in whatmight be described as pyramidal fashion do not exploit that structureand: are neither interleaved with other information elements; nor isthere the ability to make a stop/continue decision between layers orlevels delivered.

[0135] Further, Inventor believes that several other pyramidalorganization methods are new and unique to the instant invention.

[0136] Beyond what is described above, it is the further intent ofpyramiding that each subsequent “layer” of information (as much aspossible) not repeat the information in the prior level. Rather, as muchas possible, the new level of information should provide additionaldetail, not already present, which can be interleaved, or otherwisecombined, with the prior level(s) of information already delivered.

[0137] See FIG. 17 for a diagram of how several pyramidal layers may beintegrated.

[0138] 1. Examples (which can be used separately or in combination) ofpyramiding with a raster graphic image:

[0139] Some pixels in a line (and some lines of the image) can be sentfirst, constituting a low-resolution version of the image. This can bedisplayed small, or large with large blocky pixels, or large with smooth(low-pass filtered) large pixels. Then additional pixels from alreadysent lines, and additional lines can be sent and interleaved with theprior information for a higher-resolution version of the image. Thirdand more levels of detail can also be sent subsequently. The parsingprocess may not necessarily be as simple as taking every Nth pixel andevery Nth line; the information can be low-pass filtered or morecomplexly filtered prior to sampling; other data sampling/compressionschemes can be utilized within the pyramiding process.

[0140] Some bits of a pixel can be sent first, followed by more bitslater. For example, a 24-bit (8 bits each for Red, Green and Blue) imagecan be reduced to 8 bits total by sending the most significant 3 bitseach of Red and Green and 2 bits for Blue. Alternately, a customoptimized 8-bit look-up table (LUT) can be calculated for the image.Later, additional significant bits (3G, 2R, 3B; followed by 2G, 3R, 3B)can be sent. This is just one example, and bit-parsing can be combinedwith pixel or line parsing.

[0141] In addition, for strings of raster images, i.e., video, thetemporal element can be pyramided. For example; very simply, every 64th,32nd, 16th, 8th, 4th, 2nd, 1st frames can be sent (if not sent in aprevious level) as separate levels; or, frames containing major contentchanges (i.e., key frames) can be sent first; etc. Again, Inventor'sU.S. patent application Ser. No. 07/077,916 should be consulted.

[0142] Also, a vector, contour or outline version (for example, withflat color or textured fills of enclosed areas) can be derived byanalysis of a raster image. This reduced information version could besent first (perhaps itself sent at several levels of detail) to bereplaced by the full raster image at a later level(s).

[0143] In general, much more sophisticated approaches for separatinginformation into levels can be applied to this process and, inparticular, “wavelet” or other multi-resolution techniques, or relatedmathematical procedures, may prove useful for this purpose.

[0144] 2. Similarly, vector graphics or motion sequences can be“thinned” and parsed into pyramidal levels of detail. In general, large(low-spatial frequency) structures will be sent first with smallerdetails sent later.

[0145] 3. Audio signals can be pyramidally parsed by: sending sub-setsof samples; sending sub-sets of bits for given samples; sending samplesfrom only 1 of several tracks or channels (again, see Inventor's priorinventions) which may involve stereo, separate languages, etc.; fractalor other compression can be used; reduced phoneme codec-orientedcompression might be used. Further, only part of a message content maybe sent at each level, for example every other word. Although thatparticular option would probably be less useful, the techniquesdescribed for text can be applied to audio content.

[0146] 4. For text sent as ASCII or other coded form, rather than as animage of text, the following techniques can be applied.

[0147] First, fonts, drop shadows, colors and other graphic orformatting details can be omitted for a first pass; although, the amountthis will reduce bandwidth requirements may not be as significant aswith other techniques described herein.

[0148] However, a more important pyramidization of text will consist ofordering document elements in a pyramidal fashion, and transmitting themwith sufficient placement information to reconstruct the entire documentin sequence once elements from several layers are available. Forexample, the TITLE, ABSTRACT, TABLE OF CONTENTS, INDEX and CHAPTERHEADINGS can be sent in that order. This might be followed by the firstparagraph of each chapter; then the first sentence of each paragraph;the large words of sentences first (followed by the context andconnector words); etc. What is described, are a number of simple andstraightforward concepts which may be combined and expanded upon. Inaddition, AI and search style techniques can be used to search the textand look for (likely) relevant portions, chapters or paragraphs. Thesewould then be the only ones sent, the ones sent first, or the onesweighted more heavily in an interleaving or emulsification scheme. And,they can also be flagged as “of potential interest” to the user.

[0149] 5. For W3 or other multimedia pages or documents, graphics can beomitted at a first level (and then sent in a pyramidal fashion, perhapsonly when specifically requested (e.g., clicked on) or the documentbecomes active, i.e., is actually being viewed by the user) beingreplaced by a text element that says GRAPHIC, PICTURE, BUTTON, etc. Ingeneral, a complex scheme for ordering and weighting the variouselements of a multimedia document will be possible. And, the user'spreferences will be specified in one (or more, for different workpurposes or moods) profile as described above.

[0150] Combining These Components:

[0151] The three inventive components so far described—Emulsification(Interleaving) of BLOBs; Probabilistic Predictive Weighting; and,Pyramidal Ordering of Information Elements—can be combined to achieve atechnique for increasing the efficiency of end-user work and end-usercommunication line usage.

[0152] A list of potential “next needed” files, documents or otherinformation resources is assembled—by tracing links, or other referencesin prior documents; or, by searching directories, abstracts or actualdocuments.

[0153] This list of potential files, documents, pages or other resourcesavailable on the net, is ordered by importance and the probability thateach will be the next resource the user requests to see. These measuresof the importance and likelihood of a document are combined to form aweight which modulates the size and/or frequency of portions of thesedocuments which are then to be interleaved and transmitted over acommunications line to the user.

[0154] Once a specific next document is selected as the currentdocument, its weight is increased (perhaps monopolizing thecommunication line) until it (or at least the selected portion(s)) aredelivered. Further, once a new document (document portion) is selectedand made active, new potential documents are added to the list and theprobabilities of all potential documents are revised.

[0155] Thus, the expectation that as much as possible of the resourcemost likely to be needed is maximized.

[0156] The pyramidal structure of the various documents guarantees (orat least increases the likelihood) that, although the next neededdocument has only been partially delivered, the content of the documentwill still be (at least to some extent) usable and understandable by theuser.

[0157] All of these techniques would be fine-tuned depending upon thebandwidth of the available communications channel. For clarity, twonarrative examples follow which exhibit, at least, simple versions ofthe techniques described abstractly above.

[0158] Patent Document Search (Narrative Example):

[0159] Assume, for the sake of discussion, a patent search is beingconducted for an invention in the area of using computer simulation todesign kitchens. A first patent number is specified and the document isdownloaded. While it is being read by the searcher, abstracts of thepatents cited in that first patent are downloaded in an interleavedmanner; and, after that, abstracts of secondary references and full-textof primary references are downloaded in an interleaved manner.

[0160] After digesting the first document, the searcher chooses only twoof the primary references for full text search. The secondary referenceddocuments, descending from those two primary references chosen, are thenweighted more heavily in terms of interleaving. And, abstracts oftertiary references descending the two secondary documents aredownloaded with relatively heavier weights compared to abstracts ofother tertiary references. This followed by full-text of thehigh-priority tertiary references. And, so on.

[0161] As soon as each element is downloaded (or, perhaps, as the textcomes in from the communications line) a search of its content isperformed concurrently with additional downloading.

[0162] While looking for significant words (e.g., ignoring small andconnecting words—the, and, but, however, etc.; ignoring terms ofart—embodiment, system, invention, etc.) in those documents actuallyreviewed by the searcher, the system notes that the two-word sequence“virtual reality” was mentioned repeatedly in 60% of those references.In looking at the text of abstracts of quaternary references as they aredownloaded, the system notes that three of them mention that term,“virtual reality”, and those that do are weighted more heavily forhaving their full-text and referenced documents downloaded.

[0163] Further, it is noted that three of the patent documents not yetreviewed are cited in many of the documents already looked at or indocuments anticipated as having a high probability of being looked at.The weights of those documents are also increased.

[0164] When a document is actually looked at, the amount of review timeis monitored by the system. Also, the searcher can tag the document as:highly useful, useful, not very useful, not at all useful; or some othersimilar scale. The weight of that document, and all weight decisionsrelating to that document are appropriately adjusted up or down as aresult.

[0165] Further, a set of tools will be made available to the searcher tohighlight words, terms, phrases, whole paragraphs or arbitrary sectionsof text, and references, as being of particular interest; or ofnon-interest/anti-interest in order to downplay connections that mightbe made on a statistical/linguistic basis but which are, in fact, notrelevant.

[0166] Research Document Review (Narrative Example):

[0167] During the review of a pyramided downloaded research paper, theTITLE, ABSTRACT and SECTION HEADINGS are downloaded first. The headingsare Introduction, Methods, Experiment 1, Experiment 2, Experiment 3,Experiment 4, Discussion of Results, and Conclusion; not terriblyinformative. While the abstract is being perused by reviewer, the firstparagraph of each section heading is downloaded.

[0168] The first paragraph of Experiment 1 reads, in part, that “. . .was administered to twenty-seven laboratory mice . . . ”. Now, ourhypothetical researcher is interested in reviewing results ofadministering a particular class of drugs to primates. He wouldhighlight (or from a menu choose) Section 1 and indicate it as “not ofinterest”; similarly he would highlight the word mice and“dis-emphasize” its interest level.

[0169] The first paragraph of Experiment 2 reads, in part, that “. . .was administered to seven chimpanzees . . . ”. Our user would firsthighlight (or from a menu choose) Section 2 and indicate it as “ofprimary interest”; similarly he would highlight the word chimpanzee and“emphasize” its interest level.

[0170] Immediately the system would download Section 2 at full-speed (ifit were not yet there) for reviewer to look at; this section is both thecurrent active section of the current active document, but has also beenexplicitly “emphasized” as of “interest”.

[0171] Further, the system would search the additional sections andwould: download the Experiment 3 section which mentioned chimpanzee 22times and mouse twice; fail to download the Experiment 4 section which,although it mentioned chimpanzee once, mentioned the words mouse (a formof mice—determined from a look-up dictionary of related forms, synonyms,antonyms, etc.) and mice 32 times. However the sentence that containedthe word chimpanzee (as well as the previous and following sentence)would be downloaded and the word chimpanzee would be highlighted; anddownload the last two sections (but at lower priority) which mentionedchimpanzee and mouse each a few times. The occurrences of chimpanzeewould be highlighted (unless reviewer's preference profile indicated notto, which would be an option to those who found such “system-supplied”hints annoying).

[0172] Information Impedance Matching:

[0173] As described above, the three inventive components disclosedherein are combined to increase the efficiency of work done over acommunications network. The various operating parameters of thecomposite technique would be fine-tuned depending upon the bandwidth ofthe available communications channel.

[0174] The technique can be applied within a single system, to twocommunications lines of different bandwidths, to implement a methodwhereby an end-user, working over a low-bandwidth communication linewill have the perception of working over a much higher-bandwidthcommunication line. Apparent performance and response time is improved.See FIG. 1.

[0175] The interaction between a large time-sharing computer (servingmultiple customers) and the global outside network will be via a (ormany) high-bandwidth, high-speed communications line(s). The informationresources accessed by that “server” will be from diverse sources andwill be of diverse type, content, composition, form and format. Thus,the techniques described herein will not necessarily be practical toapply in all instances.

[0176] In particular, the Probabilistic Prediction of documents—theimportance and likelihood of need for them—can be done. Linkages andreferences from current documents can be traced down several levels.Those documents (once accessed) can be further searched for clues as totheir potential relevance to the user during the current work session,work in general, general interest, or for clues as to further documentsto access.

[0177] Thus, the server computer will be acting as an “intelligentagent” for the user, anticipating his needs and searching out potentialrelevant information.

[0178] However, the information may have to be downloaded—as far as theserver—in fairly standard fashion. That is because the variousinformation resources being accessed will not necessarily be organizedin a pyramidal fashion; and, coming from diverse sources, may not beinterleavable, let alone interleaved with weighting factors.

[0179] However, once these diverse information resources are assembledin the server, all of the techniques described herein can be used, whendownloading from the server to the end user's client computer over thelow-bandwidth communication line.

[0180] One of the major tasks of the server will (can) be to take thevarious resources that are not in pyramidal format and parse them forpyramidal transmission. This will be done by the various techniquesdescribed above, and the process will be fine-tuned based on the userprofile, and the particulars of the current work session, as well as ananalysis of the document in question and the specifications of theavailable communications line.

[0181] Overall, this process will likely not diminish (and may evengreatly increase) the amount of network traffic done on behalf of aparticular user during a particular work session. Much of theinformation downloaded to the sever in anticipation, may never need tobe downloaded as far as the user's client system; much of it may neverbe seen by the user. However, much more efficient (continuous) use willbe made of the communication line between the server and the end user'sclient system. See FIG. 11.

[0182] The result will be an apparent increase in the performance andresponsiveness of the overall system to the user's needs.

[0183] The task of the large server computer will be to match thehigh-bandwidth traffic available to it for downloading from theworld-wide network with the low-bandwidth channel available to it foruploading to the end user. It must do this in a way that will maintain amaximum of intelligibility of the information being provided to the enduser.

[0184] In a conceptually similar situation, an electronic signaltraveling down a high-impedance (resistance) line must be processed inorder to interface it to a low-impedance line so that the signal doesnot become distorted. The device used to match the characteristics ofthe two lines is called an impedance matching transformer.

[0185] Impedance (resistance) of a wire through which electricity flows,is the electronic equivalent of the radius or bore of a pipe throughwhich water flows, is the equivalent of the bandwidth of a channelthrough which information flows. Hence, Inventor refers to the processperformed by the server computer, in matching the performance of thehigh-bandwidth input line with the low-bandwidth output line, whilemaintaining understandability (i.e., without too much distortion of themeaning) of the information, as “information impedance matching”.

[0186] A commercial name for such a system might be the INFORMATIONFUNNEL™.

[0187] The Funnel™—An Extension Of Emulsification (NarrativeDescription):

[0188] You sit at a desktop system, connected via telephone line andmodem to an account on the Funnel. The Funnel is also the site for theTOURING PAGE™ or YELLOW PAGE™ (see next section for details). From youraccount at the Funnel an ultra-fast/wide “spigot” to the web/net isavailable to an “intelligent software agent” who downloads its“personality” from your local profile file. This agent anticipates,probabilistically, your demands from the web/net and downloads to itsown Funnel site, in a probabilistic emulsified (when possible), fashion.The agent, in turn, downloads to you at your local desktop system in aprobabilistic emulsified fashion (definitely), stripping BLOBs, andpyramidizing them.

[0189] For example, if you were looking at a page from which you may goto any of five other pages, pyramidized tips of those five pages will besent to your local machine while you are reading the original page anddeciding what to do next. The size (detail level) of each pyramid tipcan be adjusted, based upon estimated probabilities; i.e., likelihoodsof your desiring to access that page, based on complex and sophisticatedfunctions matching each page's content with goals and statisticsdescribing your current work session and your general work profile. Theprocess can be carried out several levels, downloading thepages/documents linked to or referenced by the five first-levelreferenced pages, etc.

[0190] Stripping a document or page (only one level is described)follows: pictures can be replaced by a box that says “pix” or a small,low-res version of the graphic; whole text can be replaced by somecombination of headlines, first sentence of paragraph, first few wordsof sentence, first line, key words, etc.; and, fonts and otherformatting “prettification” can be stripped out. Similarly, buttons onother graphics can be simplified. In short: translation of the pagedescription to a restricted sub-set description language; datacompression; and, knowledge that a smart, sophisticated, “fill in theblanks” display driver is at your local machine—these will permit afaster delivery of a low-information-density version of the documentquickly, with later detail to follow as/if needed. This, in turn, willpermit you to have (apparently) much faster access and/or browsingcapabilities. When a higher level of interest in a particular document(or document section) is probabilistically determined, progressivelymore detail will be downloaded to your system (or the weight for thatitem will be increased). Actually looking at a document (or section ofdocument) is the highest level of interest and, if all detail is not yetavailable, a displayed page will take on detail and completeness as youview it.

[0191] When possible, the section of document being viewed would havehighest priority within the selected document. That is to say, if alarge (compared to the size of the screen) document is being viewed, theposition of the currently viewed portion of the document would be fedback at least as far as the Funnel server. If the W3 site feeding theFunnel were capable of the behavior described in this paragraph, thecurrent window position would be fed back to the W3 site as well. Ineither or both cases, the document pyramidization would be(re-)structured so that information describing the details of thecurrently viewed section would be sent before (or, at least with higherweighting or priority) information describing the other parts of thedocument.

[0192] The Yellow Page™ and Network Caching™:

[0193] Briefly, the INFORMATION FUNNEL, as described herein, will bemore useful and effective if combined with two other system componentswhich will be described briefly below. A very large computer service isenvisioned; a large customer base will make the entire operation moreeffective and efficient.

[0194] The first of the two other system components is a directory oryellow pages for the Internet, W3, etc. A number of printed andelectronic directories are available which are intended as directoriesof the network. What is envisioned here is a comprehensive list of siteson the network cross-indexed to a large number of categories andkey-words which will facilitate user-directed searches as well asfacilitate the AI or intelligent agent functions described above. Thisdatabase can be compiled by automated searching and analysis of theinformation resources available at the various network sites.

[0195] In addition, various commercial or other sites might be invitedto provide “listings”. And, further, local (to this system) copies ofother's catalogs and other W3 resources might be kept for downloading tocustomer's client systems. These local copies may be useful because (atleast for often accessed resources) communication requirements would bereduced and response time reduced if copies were already available atthe server system.

[0196] The system would, when a request for such an item were made, seeif a local copy were available and, only if not, get it from thenetwork. Further, even if a local copy were available, a request to theremote site might be made to ask if the resource had been modified sincelast retrieved. If it had been updated, a new copy (of at least themodified part) would be downloaded. For catalogs and such, which wereintentionally deposited by others at the sever site, it may be theresponsibility of the depositor to update the local copy.

[0197] Such an Internet/W3 directory might be called THE YELLOW PAGE™ ahybrid of HOME PAGE—the root entry for a W3 site—and the YELLOW PAGEStelephone directory. Alternately, it might be called THE TOURING PAGE™.An additional list of potential trademarks is listed at the end of thisdocument.

[0198] The second system component Inventor calls NETWORK CACHING™. Asexplained above, a large service and system is envisioned with a verylarge customer base. Many customers will be accessing a portion of thesame information as other customers. Thus, in order to reduce the needfor communication time and bandwidth, copies of network information canbe kept at the server system in anticipation of later customersrequiring the same information. Again: the system would, when a requestfor such and item were made, see if a local copy were available and,only if not, get it from the network. Further, even if a local copy wereavailable a request to the remote site might be made to ask if theresource had been modified since last retrieved. If it had been updateda new copy (of at least the modified part) would be downloaded.

[0199] Which items to keep locally, and which to discard immediately,would be made by the same kind of probabilistic analyses as describedabove; in particular, by keeping cross-statistics between the interestsand behavior of the many customers on the system. Home pages for manytypes of sites (which, generally, every access passes through) would begiven additional weight. Further, if an information resource wasparticularly hard to get again (e.g.: it is large; it comes over alow-bandwidth, slow, hard to reach (often busy) or unreliablecommunications line; etc.) it would also be given additional weight asfar as deciding whether to keep it around. Items often requested (ingeneral) would be weighted more heavily. Items often requested (in theshort term) would be weighted more heavily.

[0200] One user can even be notified when a second user has downloadedinformation that might be interesting to the first. Such a determinationcan be made based on the content of the document, and/or on statisticsabout the interests (and shared interests) of the two customers.

[0201] An item might be kept locally for a set period and thendiscarded. In that way, often accessed information would stay aroundpretty much continuously. A FIFO policy can otherwise be applied as theinformation cache becomes filled.

[0202] An Alternate Embodiment:

[0203] The group of embodiments, described above, employ—in addition tothe more standard communications network itself—a computer systemrunning non-standard information processing software (i.e., the Funnel)that is interposed between the information source systems available onthe W3 (or elsewhere) and the end user's computer system.

[0204] An alternate embodiment would comprise document source (server)and document browsing (client) systems that each operated withcommunications software that had been augmented to include thetechniques described above. See FIG. 2.

[0205] In this case the same basic techniques can be applied, that is:interleaving of multiple documents or document parts (e.g., web pages);probabilistic weighting of the size and/or frequency of interleaveddocument portions; “pyramidization” of documents so that documents thathave only been partially delivered are still useful to review.

[0206] However, there will be differences in that the software runningon the server site will, in general, be more familiar with its ownsource information, and less familiar with the user's statisticalhistory profile than as described above for the Funnel embodiment. Inparticular, this will mostly effect the determination of theprobabilities used to calculate the emulsification (interleaving)weights. A narrative example will illustrate.

[0207] On-Line Catalog (Narrative Example):

[0208] The following narrative example will describe an on-line catalogwith content typical of a department store.

[0209] A naive predictive or probabilistic approach will be describedfirst, and this may be the mode of the earliest interaction with acatalog system, even if that system uses more sophisticated predictionin later stages of interaction. Reference to FIG. 4 will be made duringthis discussion.

[0210] One or more preliminary introductory pages may come first,analogous to: a catalog cover; a logon process that can include useridentification, method of payment, (intent description, questionnaire orprofile downloading as described later), etc.; a list of last minutechanges or “special” sales; etc. After that true interactivity willbegin.

[0211] What comes next will be what might be referred to as a root node,home page, top interactive level, or table of contents (TOC) page; callthis Level 0. Its contents (besides any prettifying graphics or icons)might be as simple as a list of “departments”

[0212] While the user is browsing this storewide directory, unbidden thesystem will download a series of Level 1 department (e.g., men'sclothing, books, housewares, lingerie) directories. Since the machineknows nothing about the user, they will all be downloaded with equalprobability. However, the text headlines (pyramid tip) will be sentfirst from all pages; then more text from all pages interleaved; finallyicon pictures. The headlines will be available to look at even beforethe full text or icons get there. Additionally, the hyperlinksassociated with the icons will be hot, just without pictures.

[0213] After the level 1 pages get there level two pages (groupingswithin a department, e.g., coats, pants, small appliances, dishes, etc.)will be sent in a similarly interleaved fashion; all of them. However,as soon as the user clicks on a level one department link and gets thatdepartmental level one page displayed (if and when this information canbe fed back to the catalog server) the level 2 pages associated with thelevel 1 pace being displayed will get top priority as the expense ofother level 2 pages. Similarly, the level three pages (single items)associated with the current level one page will be downloaded in asimilar equal probability fashion until a specific level two page isselected. Etc. As the user traverses the nodes of the catalog tree, theitems on the next level, attached to the current node will always besent unbidden. Of course, a specific request from the user will overridethis barrage of guessed data.

[0214] A more intelligent guessing process may be facilitated by aquestionnaire in a early page which could determine for example: theuser is a 55 year old male; shopping for his teenaged daughter'sbirthday; wants to spend about 50$ to 75$; characterizes her taste as“unknown”. In that case, before the user even selects a level one page,level 3 pages containing sweaters, jeans, CDs and rock concert ticketswill already be downloaded.

[0215] Similarly, (perhaps via a published standard, or by registeringwith a store) a user's preference profile may be downloaded (or that ofa person that is being shopped for) and size, color and “likes” may becodified for the system to match with items of likely interest.

[0216] Additionally, that information can be compiled from previouspurchases at that store or generally (perhaps by a credit card company)although the legality and advisability of collecting such data is notcertain.

[0217] Similarly, “suggestions” may be made by the systems of recently“popular items” and this may be done on an “since you liked (i.e.,bought) this item you may like this other item which was bought by manypeople who bought the first item”.

[0218] One particularly nice feature for such a catalog (or moregenerally the web) will be in the web browser display a tree-likestructure of the entire catalog indicating which nod is the current nodeand the state (already downloaded, in transit, not requested, etc.) ofother nodes. See FIG. 13.

NEW PROTOCOL

[0219] The next subject will be how to provide communications facilitiesthat will facilitate such probabilistic, pyramidal, interleaving.

[0220] Preliminaries:

[0221] The first thing to note is that there are at least three distinctways to implement the basic invention utilizing internet-likecommunication protocols. These are: micro-protocol, macro-protocol andaugmented protocol and will be described below.

[0222] Additionally for most optimal results, all computer on thenetwork should be aware of the new standards. In that cast TCP/IP-likefacilities will be provided.

[0223] However, in the absence of that, specific pairs of servers and(populations of) users may with foreknowledge use a not-widely-adaptedprivate standard. Or, as in the catalog system described previously, aprovider may (in a minimal fashion) provide such probabilisticinterleaving services. However, one cannot ask for probabilisticinterleaving if the server has no such facilities. In that case ameta-protocol will piggyback on (or below) TCP/IP like standards.

[0224] Similarly, if a service provider and a population of end-usersare that pair, the Funnel service may be implemented. In this case theservice provider will contact the network with standard TCP/IP-likefacilities. However, in this case a new version of [C]SLIP/PPP dial-upprotocol would be used.

[0225] In all cases the intention will be to establish multi-threadcommunication.

[0226] Micro-Protocol:

[0227] In this case standard TCP/IP-like packets will be received over asingle socket or port. But within that packet will be a number ofsub-packets, each belonging to a sub-connection. These may then beassigned in different sizes or at different rates in order to affectpriorities for different documents, document levels, document types,document part (MIME) types, etc.

[0228] In this case the inner packet information would be split up intoindividual sub-packets. Each would have a header containing, at least,what sub-connection it belonged to. Alternately, the whole packet mightstart with a “map” of the packet's contents.

[0229] See FIG. 14 for a diagram of such a data structure.

[0230] Macro-Protocol:

[0231] in this case standard TCP/IP-like packets will again be used.However, in this case a multiplicity of sockets, ports or connectionswill be established. In this way, different document streams may bedistinguished by referring to the logical line that they are beingreceived on. See FIG. 15 for a diagram of such a data structure.

[0232] Augmented Protocol:

[0233] In this case an additional layer of protocol will be establishedas an inside wrapper underneath the IP address and the TCP packetstructure.

[0234] Here there can be a single socket per client/server pair (unlikethe macro-protocol case) and there will be a one-to-one correspondencebetween logical and actual packets (unlike the micro-protocol case). SeeFIG. 16 for a diagram of such a data structure.

[0235] The inside wrapper will, at a minimum, have a designation ofwhich sub-connection the packet is coming in on, so that the document ordocument part can be identified.

[0236] Inventor has adopted the terminology of CABLE and FIBER toindicate that a multi-thread connection is established withsub-connection signal capability.

[0237] The following table indicates a list of some of the inner layerpacket header designations that can be implemented with this approach.DESIGNATION NAME EQUIVALENT OR USE CABLE NUMBER SOCKET or PORT NUMBERFIBER NUMBER INDIVIDUAL SUB-CONNECTION DOCUMENT NAME USEFUL TO DOUBLE UPIF RUN OUT OF FIBERS DOCUMENT PART NAME DOCUMENT TYPE MIME-LIKE OR MAYINDICATE ITEMS LIKE CATALOG OR REVIEW DOCUMENT PART TYPE AS IN HEADINGS,ABSTRACT, ETC. DOCUMENT LEVEL AS PER PYRAMIDIZATION REQUESTED PRIORITYAS PER USER REQUEST SENDING PRIORITY SAY, FROM CATALOG SYSTEM

[0238] With priority information embedded in the packet, if system-wideusage is adopted then every node on the network may act as a funnel.That is not to say that my high-priority request will be served beforeyour low-priority request; that would defeat the purpose, everybodywould ask for everything as high priority. However, for a particularuser or site, deliveries may be. prioritized.

[0239] In that case, however, low-priority packets may not be allowed topile up. So not only is labeled priority a factor, but how long has apacket waited, and how big a backlog for that user or site is there.

[0240] However, in general, the overall network may be sped up ifgenerally, people want to get their web-page text fast, make a decision,and wait for pictures only if this looks interesting. If mosttransactions were so prioritized that overall traffic of text wouldimprove; and, then adopting such a policy would be effective forindividuals.

[0241] In order to make this particularly effective, once you kill apage (decide it is not of interest) that information would be sent backto the server in order to terminate the transmission. With a singleconnection that is easy, just kill the connection. However, with acable, individual fibers will have to be activated and deactivated byrequest.

[0242] Additionally, when requesting for an information resource or,more particularly a multiplicity of them to be interleaved, eachrequested resource will have a requesting priority associated with it. amechanism will be provided in the protocol to change the priority of anyin progress transmission including, specifically, the ability to: killthe resource; suspend transmission of the resource but do not kill it;make this resource, temporarily until told otherwise, the selectedresource and devote all possible bandwidth to it at the expense off allother requests on this cable. Application programs will be able to makegreat use of such facilities by upping the priority on selected items ina hyper-media session.

[0243] Other requests will be built into this protocol. One isvalidation. Particularly for web-caching, but for other purposes, onemay instead of requesting a resource, request to validate a resource fora particular date/time or version number. What will be sent will then bean OK (indicating that the document is current) or the recent documentitself. In addition, for applications that are mutually aware of this,what may be sent is not the entire document but, rather, instructions toupdate a small portion of the document. Such delta-modulated versionscan be kept for each revision and, by comparing the requested date withthe current date the appropriate set of update directions sent. Ofcourse, the receiving client program will have to be able to accept andaffect such change directions for this to work. See FIG. 17 for adiagram of how several updates may be made on this bases, or for addingpyramidal data levels.

[0244] In addition, when a web browser is displaying a not-yet validatedcached resource, it will indicate by flashing a “not yet validindicator” until such time as the date is confirmed or the resourceupdated.

[0245] Similarly, a “request summary” flavor of request may be adoptedwhere in response to such a request an index, summary orcard-catalog-like entry precede the transmission of the actual resource.Options here will permit the resource to follow: unless otherwisekilled; not until interest is confirmed; automatically sent (or killed)after a delay to permit user decision.

AVAILABILITY OF ELEMENTS OF TECHNOLOGY

[0246] It should be noted that the vast majority of individual elementsof the foregoing invention are available “off-the-shelf” as hardware andsoftware components, and are easily integrateable by one of ordinaryskill in computer systems programming, integration and administration.

[0247] Specifically, computer add-in hardware boards are available toprovide FAX/Modem capabilities, and “voice mail” capabilities (i.e.,voice recording and playback, sensing of DTMF keypad entry, and readingof embedded DID and Caller ID signals). These components are availablefrom many vendors and many developer-level software routines and wholeapplication programs are available to operate such boards. Thesesoftware routines can be coordinated and made to communicate andexchange information under operating systems such as UNIX, DOS, Windows,or System 7.

[0248] Similarly, the communication, EMailing and other softwarefunctions that make up “The Internet” are widely know and available andtheir use and adaption are well within the ken of one of ordinary skillin computer network administration.

[0249] Thus, the various technological elements that comprise theinvention disclosed herein are (except as described otherwise) standard,well-known, widely available elements. Their construction, operation,use and integration are not, in general, the subject of the instantinvention. For the details of the construction, operation, use andintegration of these components the practitioner is directed to theavailable published literature, as well as software and equipmentmanuals, in the areas of hardware, software and information formatsrelating to, without limitation: FAX machines, FAX/Modems, FAX servers,voice mail devices, barcode printing, barcode scanning, opticalcharacter recognition, computer communication and networking (including,specifically, EMail, The Internet, and related communication andinformation exchange protocols such as HTTP, UDP, TCP/IP, etc.) andcomputers and operating systems.

[0250] Many of the elements of the present invention are available“off-the-shelf” and, in and of themselves, not inventive. However, thedesign, construction and operation of the composite systems andtechniques disclosed herein, as well as the use to which they are put,are the subject of the instant invention and are presented as novel anduseful. These novel, composite, high-level system designs are describedherein and depicted in the accompanying system and flow diagrams.

[0251] Finally, it is noted that the capabilities and system componentsdescribed herein may be provided by equivalently functioningsubstitutes. For example: signals and hardware may be of analog ordigital construction; certain functions may be exist as special purposehardware, or as programming residing on general purpose hardware;software may be provided on PROMs, or be stored in memory or on magneticor optical disk; various capabilities may, in different situations,reside in a FAX machine, FAX/Modem in a computer, in a local computer,or in a remote computer; many options exist for FAX-to-FAX,FAX-to-computer or computer-to-computer interconnection; etc. The use ofany appropriate system component, now in use or later developed, toaffect the methods and systems described herein, is considered to bewithin the scope of the instant invention.

[0252] The flows depicted in the software flow diagrams herein areexemplary, some items may be ordered differently, combined in a singlestep, skipped entirely, or accomplished in a different manner. However,the depicted flows will work. In particular, some of these functions maybe carried out by hardware components, or by software routines residingon, or supplied with, such a component.

[0253] Similarly the systems depicted in the system diagrams herein areexemplary, some items may be organized differently, combined in a singleelement, split into multiple elements, omitted entirely, or organized ina different manner. However, the depicted systems will work. Inparticular, some of these functions may be carried out by hardwarecomponents, or by software routines residing on, or supplied with, sucha component.

[0254] It will thus be seen that the objects set forth above, amongthose made apparent from the preceding description, are efficientlyattained and certain changes may be made in carrying out the abovemethod and in the construction set forth. Accordingly, it is intendedthat all matter contained in the above description or shown in theaccompanying figures shall be interpreted as illustrative and not in alimiting sense.

[0255] Now that the invention has been described, what is claimed as newand desired to be secured by Letters Patent is:

NOTES

[0256] 1. For example, see:

[0257]The Whole Internet User's Guide & Catalog, Ed Krol, O'Reilly &Associates, Inc., Sebastopol 1994

[0258]Managing INTERNET Information Services, Liu, Peek, Jones, Buus andNye, O'Reilly & Associates, Inc., Sebastopol 1994

[0259]Power Programming with RPC, John Bloomer, O'Reilly & Associates,Inc., Sebastopol 1992

[0260]World Wide Web Bible, Bryan Pfaffenberrger, MIS Press, New York1995

[0261]The SLIP/PPP Connection, Paul Gilster, John Wiley & Sons, Inc.,New York 1995

[0262]HTML Manual of Style, Larry Aronson, Ziff-Davis Press, Emeryville1994

[0263]Internetworking with TCP/IP, Vol. I, Principles, Protocols, andArchitecture, 3rd Ed., Douglas E. Comer, Prentice-Hall, Inc., New York1995

[0264]Internetworking with TCP/IP, Vol. II, Design, Integration, andIntervals, 2nd Ed. Comer and Stevens, Prentice-Hall, Inc., New York 1994

[0265]Internetworking with TCP/IP, Vol. III, Client-Server Programmingand Applications, Comer and Stevens, Prentice-Hall, Inc., New York 1993

[0266] 2. Typical examples showing the knowledge of ArtificialIntelligence of those skilled in the art include:

[0267]The Handbook or Artificial Intelligence, Barr, Cohen andFeigenbaum, Addison-Welsley Publishing Company, Inc., New York 1989.

[0268]Applications in Artificial Intelligence, Andriole, PetrocelliBooks, Inc., Princeton 1985.

[0269]Advances in Artificial Intelligence, Hallam and Mellish, JohnWiley & Sons, New York 1987.

[0270]Artificial Intelligence and Tutoring Systems: Computational andCognitive Approaches to the Communication of Knowledge, Etienne Wenger,Morgan Kaufmann Publishers, Inc., Los Altos 1987.

[0271]Neural Networks: Theory and Applications, Mammone and Zeevi,Academic Press, Inc., New York 1991.

[0272]Artificial Intelligence with Statistical Pattern Recognition,Patrick and Fattu, Prentice-Hall, Inc., Englewood Cliffs 1986.

[0273]Pattern-Directed Inference Systems, Waterman and Hayes-Roth,Academic Press, New York 1978.

[0274]Expert Database Systems: Proceedings From the First InternationalWorkshop, Ed. Kerchberg, Benjamin/Cummings Publishing Company, Inc.,Menlo Park, Calif. 1986.

[0275]Neural Networks for Perception—Volume 1: Human and MachinePerception & Volume 2: Computation, Learning, and Architectures, Ed.Harry Wechsler, Academic Press, New York 1991.

[0276] In addition, for information on the state of general knowledge infields related to computer science, one may consult The McGraw-HillComputer Science Series (and Series in Artificial Intelligence)including, but not limited to, the following selected titles, allpublished by McGraw-Hill Book Company, New York in 1983 or before:

[0277]The Design and Analysis of Computer Communication Networks, Ahuja

[0278]The Design and Analysis of Instruction Set Processors, Barbacciand Siewiorek

[0279]Computer Structures, Bell and Newell

[0280]Digital Computer Arithmetic, Cavanagh

[0281]Systems Programming, Donovan

[0282]Coordinated Computing, Filman and Friedman

[0283]Computer Organization and Programming, Grear

[0284]Introduction to the Design and Analysis of Algorithms, Goodman andHedetniemi

[0285]Computer Organization, Hamacher, Vranesic, and Zaky

[0286]Computer Architecture and Organization, Hays

[0287]Digital Computer Systems Principles, Hellerman

[0288]Computer System Performance, Hellerman and Conroy

[0289]Microprogramming Primer, Katzan

[0290]Operating Systems, Madnick and Donovan

[0291]Mathematical Theory of Computation, Manna

[0292]Introduction to Simulation: Programming Techniques and Methods ofAnalysis, Payne

[0293]Matrix Computations and Mathematical Software, Rice

[0294]Software Engineering: Design, Reliability, and Management, Shooman

[0295]Computer Structures: Principles and Examples, Siewiorek, Ball andNewell

[0296]Introduction to Computer Organization and Data Structures, Stone

[0297]Computing: An Introduction to Procedures and Procedure-Followers,Tonge and Feldman

[0298]An Introduction to Computer Science: An Algorithmic Approach,Tremblay and Bunt

[0299]Discrete Mathematical Structures with Applications to ComputerScience, Tremblay and Manohar

[0300]An Introduction to Data Structures with Applications, Tremblay andSorenson

[0301]Programming Languages, Tucker

[0302]Knowledge-Based Systems in Artificial Intelligence, David andLenat Computers and Thought, Feigenbaum and Feldman

[0303]Problem Solving Methods in Artificial Intelligence, Nilsson

[0304]Artificial Intelligence, Rich

[0305]The Psychology of Computer Vision, Winston

1. An improved method for data communication, via a packet-switchingdigital communications network, utilizing a communications protocolwherein the normal mode of operation is to transmit each data file as adata stream of packets separate from the data streams of other datafiles, wherein the improvement comprises the transmission of amultiplicity of data files via a single data stream connection whereby,within a packet switching network packet, an additional multi-threadpacket header is insinuated between the network header and the userdata.
 2. A method as in claim 1, wherein said data files comprise HTTPdocument elements.
 3. A method as in claim 1, wherein said data packetsare divided into sub-packets and said multi-thread packet headerspecifies an association between said data files and said sub-packets.